import csv
import os

# 输入文件名
input_file = "./data/input/source.csv"

# 读取输入CSV文件，跳过第一行
with open(input_file, "r", encoding="utf-8") as file:
    reader = csv.reader(file)
    data = list(reader)[1:]  # 跳过标题行

# 确保输出目录存在
output_dir = "./data/input"
if not os.path.exists(output_dir):
    os.makedirs(output_dir)

# 处理每一行数据并生成相应的CSV文件
for index, row in enumerate(data, start=1):
    # 获取降雨量和蒸发量
    rain = float(row[3])  # 降雨量(24h)
    evaporation = float(row[4])  # 蒸发量
    evaporation_per_hour = evaporation / 24  # 每小时的蒸发量
    qs = 0  # 降雨量指数
    qu = 0  # 蒸发量指数

    # 创建输出文件名
    output_file = os.path.join(output_dir, f"input{index}.csv")

    # 打开输出文件以写入
    with open(output_file, "w", newline="", encoding="utf-8") as file:
        writer = csv.writer(file)

        # 添加标题行
        writer.writerow(["TIME", "Rain", "EM", "QS", "QU"])

        # 写入50行数据
        for i in range(1, 51):
            if i == 3:
                writer.writerow([i, rain, evaporation_per_hour, 0, 0])
            else:
                writer.writerow([i, 0, evaporation_per_hour, 0, 0])

print(f"已生成 {len(data)} 个CSV文件在 {output_dir} 目录下")
